-
Notifications
You must be signed in to change notification settings - Fork 73
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
1184 allow delete-only saas endpoints #1200
Conversation
@galvana I see you requested a review, is it meant to still be in draft? |
@ThomasLaPiana getting close but not yet! I don't know how those reviewers got assigned. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this is a good solution for now that works within the existing constraints. Great code comments here too since the "why" would not always be clear without them!
Just a few questions here
@galvana given the huge code diff (due to unified fides finally getting merged) can you open a new PR against |
27954bc
to
7f5fe8b
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks good @galvana thanks for letting me know about the test failures
Please refer to #1420, a commit was missed while cherry-picking. |
Closes #1184
Code Changes
SaaSConfig.get_graph()
to add a placeholder field that assists with graph traversal when a delete request is defined without a read requestSaaSConnector.retrieve_data()
to return a single empty dictionary[{}]
in the event of a delete-only endpoint to still be able to triggerSaaSConnector.mask_data()
Steps to Confirm
Pre-Merge Checklist
CHANGELOG.md
Description Of Changes
Updates the dataset that is generated from a SaaS config. Originally, we used the
param_values
of a read request to generate the collections and the identity/dataset references. We needed to support the use case where an endpoint only has adelete
request defined and we don't have aread
request to build the collection from. This approach flags the first generated field as aprimary_key
to make sure the delete-only collection is still visited during graph traversal. This solution will need to be revisited when we no longer need to flag a field as a primary_key to call the erasure on a collection (#1199).